logic first